Computer operations include the use of non-volatile memory (NVM) to maintain certain data. Because of the wear caused to non-volatile memory by writing actions, the NVM based memory systems use wear-leveling in order to maximize write endurance.
Further, data is commonly mapped to different locations in the memory using address re-directing, wherein the system addresses and non-volatile memory addresses are translated in a table, commonly referred to as an Address Indirection Table (AIT).
However, AITs can be very large depending on the size of the non-volatile memory, as well as the size of the wear-level block. Large tables generally are required reside in the non-volatile memory itself, and thus need to be wear-leveled as well, causing the AIT to be a multi-level look-up structure with a high performance cost.